#pragma once

#include <memory>
//#include "instructions/base/bytecode_reader.h"
#include "instructions/base/instructions.h"
#include "rtda/frame.h"

namespace jvm {
    namespace instructions{
        class INVOKE_INTERFACE : public Instruction {
        private:
            uint32_t _index;

        public:
            void fetchOperands(std::shared_ptr<BytecodeReader> reader) override;

            void execute(std::shared_ptr<rtda::Frame> frame) override;
        };
    }// namespace instructions
} // namespace jvm
